// 检验
var check_phone = false
var check_name = false
var check_address = false
$('#form-phone').bind('input propertychange blur', function (){
    let reg = /^1\d{10}$/
    if(reg.test($(this).val())){
        check_phone = true
        $(this).next().css('color', 'green')
        $(this).next().text("√")

    } else{
        check_phone = false
        $(this).next().css('color', 'red')
        $(this).next().text("* 请输入规范的联系电话")
    }
});
$('#form-name').bind('input propertychange blur', function (){
    let reg = /^[\u4E00-\u9FA5]+$/
    if(reg.test($(this).val()) && $(this).val().length <= 5){
        check_name = true
        $(this).next().css('color', 'green')
        $(this).next().text("√")

    } else{
        check_name = false
        $(this).next().css('color', 'red')
        $(this).next().text("* 请输入规范的中文名称")
    }
})
$('#form-address').bind('input propertychange blur', function (){
    if($(this).val().length <= 128){
        check_address = true
        $(this).next().css('color', 'green')
        $(this).next().text("目前长度: "+ $(this).val().length + " √")

    } else{
        check_address = false
        $(this).next().css('color', 'red')
        $(this).next().text("* 请输入指定范围内的详细地址")
    }
})
// 保存信息
function updateUserByCode(userCode){
    $('#form-name').blur();
    $('#form-phone').blur();
    $('#form-address').blur();

    if(check_name && check_phone && check_address){
        $.ajax({
            url: '/user/update/' + userCode,
            data: $('#form-user-modify').serialize(),
            dataType: 'JSON',
            type: 'POST',
            error: (err) => {
                alert('保存信息请求失败.');
                console.error(err.responseText)
            },
            success: (data) =>{
                open_toast((data['code'] == 1 ? 'success' : 'fail'), data['message'])
            }
        })
    } else open_toast('fail', "请输入规范的用户信息")
    return false;
}
// 成功弹窗关闭后 -> 关闭模态框，并刷新窗口
$('#toast-success').bind('hidden.bs.toast', function () {
    $('#btn-modal-cancel').click()
    location.reload()
})

// 选中全部标签
$('#cb_all').change(function (){
    $('.cb_user').prop('checked', $(this).prop('checked'))
})

/* 点击编辑按钮, 显示模态框 */
function getUserInfoByCode(userCode){
    // 获取当前编辑的用户信息
    $.ajax({
        url:'/user/query/' + userCode,
        type: 'POST',
        dataType: 'JSON',
        error: (err) => {open_toast('fail', "查询用户信息失败!")},
        success:(data) =>{
            console.log(data);
            let user = data.response
            // 设置用户信息
            $('#finalImg').attr('src', user['img']) // 头像
            $('#replaceImg').data('code', user['code']) // 编辑头像按钮标记用户账号
            $('#span-modal-role').text(user['role']['roleName']) // 标记用户身份
            // 标记用户性别
            if(user['gender'] === 1)
                $('#form-gender-woman').prop('checked', true)
            else
                $('#form-gender-man').prop('checked', true)
            $('#form-birthday').val(user['birthdayString'])     // 标记用户生日
            $('#form-name').val(user['username'])               // 标记用户名称
            $('#form-phone').val(user['phone'])               // 标记用户电话
            // 初始化省市区
            prov = user['addressDetail']['prov']               // 标记用户所在省份
            city = user['addressDetail']['city']               // 标记用户所在城市
            area = user['addressDetail']['area']              // 标记用户所在地区
            detail = user['addressDetail']['detail']               // 标记用户所在详细地址
            initAddress();
            $('#div-modal').show()
            // 绑定确认编辑事件
            $('#btn-modal-ok').attr('onclick', `updateUserByCode("${user['code']}")`)
            // 绑定头像编辑事件
            $('#sureCut').attr('onclick', `sureModifyImg("${user['code']}")`)
        }
    })
}